/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Forms;

import BusinessEntity.BE_EstadoRequerimiento;
import BusinessEntity.BE_Personal;
import BusinessEntity.BE_Requerimiento;
import BusinessEntity.BE_Usuario;
import BusinessLogic.BL_EstadoRequerimiento;
import BusinessLogic.BL_Requerimiento;
import Comun.Constantes;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JFrame;
import javax.swing.ListSelectionModel;
import javax.swing.SwingConstants;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author richard.saldana
 */
public class Frm_BandejaRequerimientos extends javax.swing.JInternalFrame {

    //padre
    private JFrame frmPadre;
    //tabla
    private DefaultTableModel objModelo;
    //Personal
    private BE_Personal objBEPersonal;
    //usuario
    private BE_Usuario objBEUsuario;
    //lista requerimientos
    private ArrayList<BE_Requerimiento> aobjBERequerimiento;
    /**
     * Creates new form Frm_BandejaTarea
     */
    public Frm_BandejaRequerimientos(JFrame frmVentana) throws InstantiationException, IllegalAccessException, SQLException {
        initComponents();
        setDefaultCloseOperation(0);
        this.frmPadre = frmVentana;
        this.objModelo = (DefaultTableModel) this.tblRequerimientos.getModel();
        this.objBEPersonal =((Frm_principal) this.frmPadre).getObjBEPersonal();
        this.objBEUsuario = ((Frm_principal) this.frmPadre).getObjBEUsuario();
        
        habilitarOpciones(this.objBEPersonal);
        
      
        
         //para centrar las columnas de la tabla
        DefaultTableCellRenderer tcr = new DefaultTableCellRenderer();
        tcr.setHorizontalAlignment(SwingConstants.CENTER);
        this.tblRequerimientos.getColumnModel().getColumn(0).setCellRenderer(tcr);
        this.tblRequerimientos.getColumnModel().getColumn(1).setCellRenderer(tcr);
        this.tblRequerimientos.getColumnModel().getColumn(3).setCellRenderer(tcr);
        cargarListaRequerimientos(this.objBEPersonal);
    }

    public void cargarListaRequerimientos( BE_Personal objBEPersonal) throws InstantiationException, IllegalAccessException, SQLException {
        
        this.aobjBERequerimiento =BL_Requerimiento.obtenerInstancia().obtenerRequerimientos(objBEPersonal);
        llenarGrilla(getAobjBERequerimiento());
        
        
    }
    
        public void llenarGrilla(ArrayList<BE_Requerimiento> lstRequerimientos) throws InstantiationException, IllegalAccessException, SQLException {

        if (lstRequerimientos != null) {
            
            for (BE_Requerimiento objBERequerimiento : lstRequerimientos) {
     
                BE_EstadoRequerimiento  objBEEstado = new BE_EstadoRequerimiento();
                objBEEstado = BL_EstadoRequerimiento.obtenerInstancia().obtenerEstadoRequerimiento(objBERequerimiento.getObjBEEstadoRequerimiento().getIdEstado());

                objModelo.addRow(new Object[]{
                          objBERequerimiento.getIdRequerimiento(),
                          objBERequerimiento.getStrNombre(),
                          objBERequerimiento.getStrDescripcion(),
                          objBEEstado.getStrNombre()
                        });
            }
        }
       this.tblRequerimientos.updateUI();
    }
   
    public void limpiarGrilla() {
       this.objModelo.getDataVector().removeAllElements();
    }
    
    public void habilitarOpciones( BE_Personal objBEPersonal) throws InstantiationException, IllegalAccessException, SQLException {
        
      if(objBEPersonal.getObjBERol().getIdRol() == Constantes.AnalistaCertificacion){
          this.btnAgregar.setEnabled(true);
      }
        
        
    }
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jpDetalle = new javax.swing.JPanel();
        jspReqAsignados = new javax.swing.JScrollPane();
        tblRequerimientos = new javax.swing.JTable();
        jspReqNoAsignados = new javax.swing.JScrollPane();
        tblRequerimientos1 = new javax.swing.JTable();
        lblReqAsignados = new javax.swing.JLabel();
        lblReqAsignados1 = new javax.swing.JLabel();
        jpCabecera = new javax.swing.JPanel();
        btnRegresar = new javax.swing.JButton();
        jButton6 = new javax.swing.JButton();
        btnEjecutar = new javax.swing.JButton();
        btnAgregar = new javax.swing.JButton();
        btnModificar = new javax.swing.JButton();
        jButton1 = new javax.swing.JButton();

        jpDetalle.setBorder(javax.swing.BorderFactory.createTitledBorder("Bandeja de Requerimientos"));

        tblRequerimientos.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Código", "Nombre", "Descripción", "Estado"
            }
        ) {
            boolean[] canEdit = new boolean [] {
                false, false, false, false
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        jspReqAsignados.setViewportView(tblRequerimientos);

        tblRequerimientos1.setModel(new javax.swing.table.DefaultTableModel(
            new Object [][] {

            },
            new String [] {
                "Código", "Nombre", "Descripción", "Estado"
            }
        ) {
            boolean[] canEdit = new boolean [] {
                false, false, false, false
            };

            public boolean isCellEditable(int rowIndex, int columnIndex) {
                return canEdit [columnIndex];
            }
        });
        jspReqNoAsignados.setViewportView(tblRequerimientos1);

        lblReqAsignados.setFont(new java.awt.Font("Times New Roman", 1, 13)); // NOI18N
        lblReqAsignados.setText("Requerimientos Asignados");

        lblReqAsignados1.setFont(new java.awt.Font("Times New Roman", 1, 13)); // NOI18N
        lblReqAsignados1.setText("Requerimientos sin Asignar");

        javax.swing.GroupLayout jpDetalleLayout = new javax.swing.GroupLayout(jpDetalle);
        jpDetalle.setLayout(jpDetalleLayout);
        jpDetalleLayout.setHorizontalGroup(
            jpDetalleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jpDetalleLayout.createSequentialGroup()
                .addGap(212, 212, 212)
                .addComponent(lblReqAsignados1)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
            .addGroup(jpDetalleLayout.createSequentialGroup()
                .addGroup(jpDetalleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jpDetalleLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jspReqAsignados, javax.swing.GroupLayout.DEFAULT_SIZE, 579, Short.MAX_VALUE))
                    .addGroup(jpDetalleLayout.createSequentialGroup()
                        .addGap(218, 218, 218)
                        .addComponent(lblReqAsignados, javax.swing.GroupLayout.PREFERRED_SIZE, 149, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(jpDetalleLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jspReqNoAsignados, javax.swing.GroupLayout.DEFAULT_SIZE, 579, Short.MAX_VALUE)))
                .addContainerGap())
        );
        jpDetalleLayout.setVerticalGroup(
            jpDetalleLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jpDetalleLayout.createSequentialGroup()
                .addComponent(lblReqAsignados)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jspReqAsignados, javax.swing.GroupLayout.PREFERRED_SIZE, 176, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 11, Short.MAX_VALUE)
                .addComponent(lblReqAsignados1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jspReqNoAsignados, javax.swing.GroupLayout.PREFERRED_SIZE, 190, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(37, 37, 37))
        );

        btnRegresar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/home_regresar.png"))); // NOI18N
        btnRegresar.setToolTipText("Regresar");
        btnRegresar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnRegresarActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jpCabeceraLayout = new javax.swing.GroupLayout(jpCabecera);
        jpCabecera.setLayout(jpCabeceraLayout);
        jpCabeceraLayout.setHorizontalGroup(
            jpCabeceraLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpCabeceraLayout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(btnRegresar, javax.swing.GroupLayout.PREFERRED_SIZE, 61, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        jpCabeceraLayout.setVerticalGroup(
            jpCabeceraLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpCabeceraLayout.createSequentialGroup()
                .addComponent(btnRegresar, javax.swing.GroupLayout.PREFERRED_SIZE, 55, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 0, Short.MAX_VALUE))
        );

        jButton6.setText("Devolver");

        btnEjecutar.setText("Ejecutar");
        btnEjecutar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnEjecutarActionPerformed(evt);
            }
        });

        btnAgregar.setText("Agregar");
        btnAgregar.setActionCommand("btn_agregar");
        btnAgregar.setEnabled(false);
        btnAgregar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnAgregarActionPerformed(evt);
            }
        });

        btnModificar.setText("Modificar");
        btnModificar.setActionCommand("btn_modificar");
        btnModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                btnModificarActionPerformed(evt);
            }
        });

        jButton1.setText("Eliminar");
        jButton1.setActionCommand("btn_eliminar");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jpDetalle, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(0, 0, Short.MAX_VALUE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jpCabecera, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addContainerGap())))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addComponent(jButton6, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(btnEjecutar, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(btnAgregar, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(btnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 111, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addComponent(jpCabecera, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jpDetalle, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 32, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                    .addComponent(btnAgregar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(btnEjecutar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(btnModificar, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addComponent(jButton1, javax.swing.GroupLayout.PREFERRED_SIZE, 31, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap())
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void btnAgregarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAgregarActionPerformed

    }//GEN-LAST:event_btnAgregarActionPerformed

    private void btnRegresarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnRegresarActionPerformed
        ((Frm_principal) (this.frmPadre)).habilitarMenu();
        this.dispose();
    }//GEN-LAST:event_btnRegresarActionPerformed

    private void btnEjecutarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnEjecutarActionPerformed
       
       int intRowCount = tblRequerimientos.getSelectedRowCount();
       int intOpcion = 0;
       
       if(intRowCount > 1){
           Comun.GUI.msjAlerta("Solo se debe seleccionar un registro");
       }else if(intRowCount == 0){
           Comun.GUI.msjAlerta("Debe seleccionar un registro");
       }else{
           int intRow = tblRequerimientos.getSelectedRow();
           int intEstadoRequerimiento = this.aobjBERequerimiento.get(intRow).getObjBEEstadoRequerimiento().getIdEstado();
           int intFlagAsignacion = this.aobjBERequerimiento.get(intRow).getIntFlagAsignacion();
           
                if(this.objBEPersonal.getObjBERol().getIdRol() == Constantes.AnalistaCertificacion){
                    if(intEstadoRequerimiento == Constantes.EstadoIngresado){
                       int intCodigoRequerimiento = Integer.parseInt(tblRequerimientos.getValueAt(intRow, 0).toString());
                       try {
                           BL_Requerimiento.obtenerInstancia().ejecutarRequerimiento(intCodigoRequerimiento);
                       } catch (InstantiationException ex) {
                           Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                       } catch (IllegalAccessException ex) {
                           Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                       } catch (SQLException ex) {
                           Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                       }
                       
                       Comun.GUI.msjAlerta("El requerimiento se proceso de forma adecuada");
                       
                        this.tblRequerimientos.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
                        limpiarGrilla();

                         try {
                             cargarListaRequerimientos(getObjBEPersonal());

                         } catch (InstantiationException ex) {
                             Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                         } catch (IllegalAccessException ex) {
                             Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                         } catch (SQLException ex) {
                             Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                         }
                    } 
                }
                
                if(this.objBEPersonal.getObjBERol().getIdRol() == Constantes.JefeTester){
                    if(intEstadoRequerimiento == Constantes.EstadoEnEstimacion && intFlagAsignacion == Constantes.FlagNoAsignado ){
                        intOpcion = Constantes.OpcionNuevo; //ASIGNAR ANALISTA
                        Frm_AsignarRequerimiento objFrm_AsignarRequerimiento = null;
                        int intCodigoRequerimiento = Integer.parseInt(tblRequerimientos.getValueAt(intRow, 0).toString());
                        
                        try {
                            objFrm_AsignarRequerimiento = new Frm_AsignarRequerimiento(this, intCodigoRequerimiento, intOpcion);
                        } catch (InstantiationException ex) {
                            Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (IllegalAccessException ex) {
                            Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                        } catch (SQLException ex) {
                            Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                        }

                        Frm_principal.jdpContenedor.add(objFrm_AsignarRequerimiento);
                        Dimension pantalla = Toolkit.getDefaultToolkit().getScreenSize();
                        Dimension ventana = objFrm_AsignarRequerimiento.getSize();
                        objFrm_AsignarRequerimiento.setLocation((pantalla.width - ventana.width) / 2, (pantalla.height - ventana.height) / 5);
                        objFrm_AsignarRequerimiento.toFront();
                        objFrm_AsignarRequerimiento.setVisible(true);
                        this.tblRequerimientos.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
                        this.limpiarGrilla();
                        this.setVisible(false); 
                    
                    }
                    //LOGICA AGREGADA EN EL BOTON MODIFICAR
                    /*else if(intFlagAsignacion == Constantes.FlagAsignado){
                         this.setVisible(false);
                         if (Comun.GUI.msjPreguntaSiNo("¿Seguro que desea Modificar el Requerimiento Asignado" )) {
                            intOpcion = Constantes.OpcionModificar; //MODIFICACION
                            Frm_AsignarRequerimiento objFrm_AsignarRequerimiento = null;
                            int intCodigoRequerimiento = Integer.parseInt(tblRequerimientos.getValueAt(intRow, 0).toString());

                            try {
                                objFrm_AsignarRequerimiento = new Frm_AsignarRequerimiento(this, intCodigoRequerimiento, intOpcion);
                            } catch (InstantiationException ex) {
                                Logger.getLogger(Frm_BandejaTarea.class.getName()).log(Level.SEVERE, null, ex);
                            } catch (IllegalAccessException ex) {
                                Logger.getLogger(Frm_BandejaTarea.class.getName()).log(Level.SEVERE, null, ex);
                            } catch (SQLException ex) {
                                Logger.getLogger(Frm_BandejaTarea.class.getName()).log(Level.SEVERE, null, ex);
                            }

                            Frm_principal.jdpContenedor.add(objFrm_AsignarRequerimiento);
                            Dimension pantalla = Toolkit.getDefaultToolkit().getScreenSize();
                            Dimension ventana = objFrm_AsignarRequerimiento.getSize();
                            objFrm_AsignarRequerimiento.setLocation((pantalla.width - ventana.width) / 2, (pantalla.height - ventana.height) / 5);
                            objFrm_AsignarRequerimiento.toFront();
                            objFrm_AsignarRequerimiento.setVisible(true);
                            this.tblRequerimientos.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
                            this.limpiarGrilla();
                            this.setVisible(false); 
                         }
                         else{
                             this.setVisible(true);
                         }
                    }*/
                     
                }

       
       }

    }//GEN-LAST:event_btnEjecutarActionPerformed

    private void btnModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnModificarActionPerformed

       int intRowCount = tblRequerimientos.getSelectedRowCount();
       int intOpcion = 0;
       
       if(intRowCount > 1){
           Comun.GUI.msjAlerta("Solo se debe seleccionar un registro");
       }else if(intRowCount == 0){
           Comun.GUI.msjAlerta("Debe seleccionar un registro");
       }else{
           int intRow = tblRequerimientos.getSelectedRow();
           int intEstadoRequerimiento = this.aobjBERequerimiento.get(intRow).getObjBEEstadoRequerimiento().getIdEstado();
           int intFlagAsignacion = this.aobjBERequerimiento.get(intRow).getIntFlagAsignacion();
           
                if(this.objBEPersonal.getObjBERol().getIdRol() == Constantes.AnalistaCertificacion){
                    if(intEstadoRequerimiento == Constantes.EstadoIngresado){

                    } 
                }
                
                if(this.objBEPersonal.getObjBERol().getIdRol() == Constantes.JefeTester){
                     if(intFlagAsignacion == Constantes.FlagAsignado){
                         this.setVisible(false);
                         if (Comun.GUI.msjPreguntaSiNo("¿Seguro que desea Modificar el Requerimiento Asignado" )) {
                            intOpcion = Constantes.OpcionModificar; //MODIFICACION
                            Frm_AsignarRequerimiento objFrm_AsignarRequerimiento = null;
                            int intCodigoRequerimiento = Integer.parseInt(tblRequerimientos.getValueAt(intRow, 0).toString());

                            try {
                                objFrm_AsignarRequerimiento = new Frm_AsignarRequerimiento(this, intCodigoRequerimiento, intOpcion);
                            } catch (InstantiationException ex) {
                                Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                            } catch (IllegalAccessException ex) {
                                Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                            } catch (SQLException ex) {
                                Logger.getLogger(Frm_BandejaRequerimientos.class.getName()).log(Level.SEVERE, null, ex);
                            }

                            Frm_principal.jdpContenedor.add(objFrm_AsignarRequerimiento);
                            Dimension pantalla = Toolkit.getDefaultToolkit().getScreenSize();
                            Dimension ventana = objFrm_AsignarRequerimiento.getSize();
                            objFrm_AsignarRequerimiento.setLocation((pantalla.width - ventana.width) / 2, (pantalla.height - ventana.height) / 5);
                            objFrm_AsignarRequerimiento.toFront();
                            objFrm_AsignarRequerimiento.setVisible(true);
                            this.tblRequerimientos.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
                            this.limpiarGrilla();
                            this.setVisible(false); 
                         }
                         else{
                             this.setVisible(true);
                         }
                    }
                       
                        
                        
                }

       
       }

    }//GEN-LAST:event_btnModificarActionPerformed

    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton btnAgregar;
    private javax.swing.JButton btnEjecutar;
    private javax.swing.JButton btnModificar;
    private javax.swing.JButton btnRegresar;
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton6;
    private javax.swing.JPanel jpCabecera;
    private javax.swing.JPanel jpDetalle;
    private javax.swing.JScrollPane jspReqAsignados;
    private javax.swing.JScrollPane jspReqNoAsignados;
    private javax.swing.JLabel lblReqAsignados;
    private javax.swing.JLabel lblReqAsignados1;
    public transient javax.swing.JTable tblRequerimientos;
    public transient javax.swing.JTable tblRequerimientos1;
    // End of variables declaration//GEN-END:variables

    /**
     * @return the objBEUsuario
     */
    public BE_Usuario getObjBEUsuario() {
        return objBEUsuario;
    }

    /**
     * @param objBEUsuario the objBEUsuario to set
     */
    public void setObjBEUsuario(BE_Usuario objBEUsuario) {
        this.objBEUsuario = objBEUsuario;
    }

    /**
     * @return the aobjBERequerimiento
     */
    public ArrayList<BE_Requerimiento> getAobjBERequerimiento() {
        return aobjBERequerimiento;
    }

    /**
     * @param aobjBERequerimiento the aobjBERequerimiento to set
     */
    public void setAobjBERequerimiento(ArrayList<BE_Requerimiento> aobjBERequerimiento) {
        this.aobjBERequerimiento = aobjBERequerimiento;
    }

    /**
     * @return the objBEPersonal
     */
    public BE_Personal getObjBEPersonal() {
        return objBEPersonal;
    }

    /**
     * @param objBEPersonal the objBEPersonal to set
     */
    public void setObjBEPersonal(BE_Personal objBEPersonal) {
        this.objBEPersonal = objBEPersonal;
    }
    
}
